Memoized Pull-Tabbing for Functional Logic Programming

نویسندگان

چکیده

Pull-tabbing is an evaluation technique for functional logic programs which computes all non-deterministic results in a single graph structure. Pull-tab steps are local transformations to move choices towards the root of expression. independent search strategy so that different strategies (depth-first, breadth-first, parallel) can be used extract computation. It has been compile languages into imperative or purely target languages. might duplicate case shared subexpressions. This could result dramatic increase execution time compared backtracking implementation. In this paper we propose refinement avoids efficiency problem while keeping good properties pull-tabbing. We evaluate first implementation improved Julia programming language.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

On the correctness of pull-tabbing

Pull-tabbing is an evaluation approach for functional logic computations, based on a graph transformation recently proposed, which avoids making irrevocable non-deterministic choices that would jeopardize the completeness of computations. In contrast to other approaches with this property, it does not require an upfront cloning of a possibly large portion of the choice’s context. We formally de...

متن کامل

Probabilistic Functional Logic Programming

This paper presents PFLP, a library for probabilistic programming in the functional logic programming language Curry. It demonstrates how the concepts of a functional logic programming language support the implementation of a library for probabilistic programming. In fact, the paradigms of functional logic and probabilistic programming are closely connected. That is, we can apply techniques fro...

متن کامل

Multi-paradigm Logic Programming Some Applications of Functional-logic Programming

We show examples for higher-order functional logic programming in which both programming concepts nicely complement each other. These include modeling distributed systems, parsing and hardware synthesis.

متن کامل

Contracts and Specifications for Functional Logic Programming

The expressive power of functional logic languages supports high-level specifications as well as efficient implementations of problems in the same language. If specifications are executable, they can be used both as initial prototypical implementations and as contracts for checking the reliable execution of implementations expected to satisfy the specification. In this paper, we propose a concr...

متن کامل

Constraint Functional Logic Programming for Origami Construction

We describe origami programming methodology based on constraint functional logic programming. The basic operations of origami are reduced to solving systems of equations which describe the geometric properties of paper folds. We developed two software components: one that provides primitives to construct, manipulate and visualize paper folds and the other that solves the systems of equations. U...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Lecture Notes in Computer Science

سال: 2021

ISSN: ['1611-3349', '0302-9743']

DOI: https://doi.org/10.1007/978-3-030-75333-7_4